#ifndef VALEUR_H_
#define VALEUR_H_

#include <typeinfo>
#include <string>
#include <iostream>
#include <iomanip>
using namespace std;

class Valeur {
public:
  virtual ~Valeur() {};
};

class ValeurInt : public Valeur {
public:
	ValeurInt(int val=0) {
  this->val=val;
 }
 int getValeur() { return val; }
private:
 int val;
};

class ValeurFloat : public Valeur {
public:
	ValeurFloat(float val=0.0) {this->val=val;}
	float getValeur() { return val; }
private:
    float val;
};

class ValeurString : public Valeur {
public:
	ValeurString(string val="") {
        this->val=val;
    }
    string getValeur() { return val; }
private:
    string val;
};

/*class ValeurChar : public Valeur {
public:
	ValeurChar(char val='\0') {
        this->val=val;
    }
    char getValeur() { return val; }
private:
    char val;
};*/


#endif /* VALEUR_H_ */

